package com.xuchao.rabbit.b2;

import com.rabbitmq.client.Channel;
import com.xuchao.rabbit.utils.RabbitMqUtils;

import java.util.Scanner;

/**
 * @Author xuchao
 * @Date:2023/6/6 17:29
 * @description 批量发送消息
 * @Version 1.0
 */
public class Task01 {
    public static final String QUEUE_NAME = "hello";

    //发送大量的消息
    public static void main(String[] args) throws Exception {
        Channel channel = RabbitMqUtils.getChannel();
        /**
         * 生成一个队列
         * 1.队列名称
         * 2.队列是否持久化（持久化表示存储在磁盘中） 默认情况消息存储在内存中
         * 3.该队列是否只供一个消费者进行消费 是否进行消息的共享 true可以多个消费者消费
         * 4.是否自动删除，最后一个消费者断开连接后 该队列是否自动删除 true自动删除
         * 5.其他参数
         */
        channel.queueDeclare(QUEUE_NAME,false,false,false,null);
        //从控制台当中接受信息
        Scanner scanner = new Scanner(System.in);
        while(scanner.hasNext()){
            String message = scanner.next();
            //1.交换机 2.队列名称 3.其他参数 4.消息体
            channel.basicPublish("",QUEUE_NAME,null,message.getBytes());
            System.out.println("发送完成...");
        }
    }
}
